home *** CD-ROM | disk | FTP | other *** search
- /* demoadv.c - used for testing TCHK advanced date conversions */
-
- #include <howard.h>
- #include <datehk.h>
- #include <dateadv.h>
-
- #include <stdio.h>
- #include <dos.h>
- #include <stdlib.h>
- #include <string.h>
-
- void main(void)
-
- void main(void)
- {
- extern int _argc;
- extern int **_argv;
- char buff[80], temp[80], temp2[80];
- double dbl, dbl2;
- struct date today, d, d2;
- struct ddate dd, dd2;
- int stype, dtype;
-
- if (_argc<3) {
- printf("DemoAdv is a demonstration program of the advanced date conversions of TCHK.\n\n");
- printf("Usage: demoadv stype dtype\n\n");
- printf(" demoadv will convert today's date from stype format\n");
- printf(" to dtype format. See TCHK.DOC for more details\n");
- exit(1);
- }
-
- stype = atoi(_argv[1]);
- dtype = atoi(_argv[2]);
- if (stype<1 || stype>43 || dtype<1 || dtype>43) {
- printf("Invalid format (must be 1-43)\n");
- exit(2);
- }
-
- /* for this demo, I get today's date, convert it to format 1 (MM-DD-YY)
- via a sprintf() and then convert it to format stype for the test of
- date_convert(s,d,stype,dtype). */
-
- getdate(&today);
- sprintf(buff,"%2d-%2d-%2d",today.da_mon,today.da_day,today.da_year-1900);
- printf("Today's date: %s Stype %d: ",buff,stype);
- switch (stype) {
- case 4:
- case 5:
- case 6:
- case 7:
- case 8: { date_convert(buff,&dbl,1,stype);
- printf("%lf",dbl);
- switch (dtype) {
- case 4:
- case 5:
- case 6:
- case 7:
- case 8: { date_convert(&dbl,&dbl2,1,dtype); break; }
- case 9: { date_convert(&dbl,&d2,1,dtype); break; }
- case 10: { date_convert(&dbl,&dd2,1,dtype); break; }
- default: { date_convert(&dbl,temp2,1,dtype); break; }
- }
- break;
- }
- case 9: { date_convert(buff,&d,1,stype);
- printf("%d %d %d",d.da_day,d.da_mon,d.da_year);
- switch (dtype) {
- case 4:
- case 5:
- case 6:
- case 7:
- case 8: { date_convert(&d,&dbl2,1,dtype); break; }
- case 9: { date_convert(&d,&d2,1,dtype); break; }
- case 10: { date_convert(&d,&dd2,1,dtype); break; }
- default: { date_convert(&d,temp2,1,dtype); break; }
- }
- break;
- }
- case 10: { date_convert(buff,&dd,1,stype);
- printf("%d %d %d",dd.dday,dd.dmon,dd.dyear);
- switch (dtype) {
- case 4:
- case 5:
- case 6:
- case 7:
- case 8: { date_convert(&dd,&dbl2,1,dtype); break; }
- case 9: { date_convert(&dd,&d2,1,dtype); break; }
- case 10: { date_convert(&dd,&dd2,1,dtype); break; }
- default: { date_convert(&dd,temp2,1,dtype); break; }
- }
- break;
- }
- default: { date_convert(buff,temp,1,stype);
- printf("%s",temp);
- switch (dtype) {
- case 4:
- case 5:
- case 6:
- case 7:
- case 8: { date_convert(temp,&dbl2,1,dtype); break; }
- case 9: { date_convert(temp,&d2,1,dtype); break; }
- case 10: { date_convert(temp,&dd2,1,dtype); break; }
- default: { date_convert(temp,temp2,1,dtype); break; }
- }
- break;
- }
- }
- printf(" -> Dtype %d: ",dtype);
- switch (dtype) {
- case 4:
- case 5:
- case 6:
- case 7:
- case 8: { printf("%lf",dbl2); break; }
- case 9: { printf("%d %d %d",d2.da_day,d2.da_mon,d2.da_year); break; }
- case 10: { printf("%d %d %d",dd2.dday,dd2.dmon,dd2.dyear); break; }
- default: { printf("%s",temp2); break; }
- }
- printf("\n");
-
- /* quit */
- exit(0);
- }